草庐IT

java - 检查forEach lambda循环Java 8中List的范围

全部标签

ruby - 如何检查我的主题是否引发异常?

我目前正在subject中创建一个对象,需要测试这是否会引发异常。以下代码说明了我要实现的目标:describeMyClassdodescribe'#initialize'dosubject{MyClass.new}it{is_expected.not_toraise_error(Some::Error)}endend我有一种感觉,我正在以错误的方式处理这件事。将subject设置为新对象而不创建对象两次的首选方法是什么?更新我的问题有两个。首先,这种语法不起作用:it{is_expected.not_toraise_error}但是,在itblock中使用expect确实如此(正如J

ruby - 检查 Rakefile 中是否存在 rake 任务

我正在寻找一种方法来检查Rakefile中是否存在某个rake任务。我有一个任务依赖项,如果该任务可用,我只想将其作为依赖项包含在内。在这种特殊情况下,该任务仅在Rails项目中可用,但我希望我的rake任务也能在更通用的Ruby应用程序环境中工作(不仅仅是Rails)。我想做这样的事情:iftasks.includes?('assets:precompile')task:archive=>[:clean,:vendor_deps,'assets:precompile']...endelsetask:archive=>[:clean,:vendor_deps]...endend在rak

ruby-on-rails - Rails 中每个循环的最后一次迭代不要有逗号

我想在Rails中打印出以逗号分隔的链接列表。这是我得到的:">,这是我想要的:ThingA,ThingB,ThingC但是现在我在循环的最后一次迭代中得到了一个额外的逗号!我该怎么办? 最佳答案 一种方法是使用map然后Array#join: 关于ruby-on-rails-Rails中每个循环的最后一次迭代不要有逗号,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/266957

ruby - RVM 系统范围的安装脚本 url 已损坏——什么是替换?

我的RVM系统级安装脚本损坏了,无论是LinodeStackScripts还是Chef-soloRecipes的形式。根据RVM网站上的说明,我的脚本以root身份执行以下命令以在系统范围内安装RVM:echo"InstallingRVMsystem-wide">>$logfilebash>/etc/profile上面的关键部分是urlhttp://bit.ly/rvm-install-system-wide。截至今天,2011年3月24日,此网址不再提供服务。它会导致GitHub404错误。RVM网站上的以下URL用于包含系统范围安装的说明:http://rvm.beginrescu

ruby-on-rails - 将 Timecop gem 用于范围

我在Rails3.0应用程序中指定一个范围,如下所示:classDrawingList=?',Date.today,Date.today)end在我的规范中,我想做的是:beforedo@list=DrawingList.create#thingsthatincludebeginandenddatesendit"doesn'tfindanactivedrawingiftheyareoutofrange"dopending"reallyneedtofigureouthowtoworktimecopinthepresenceofscopes"Timecop.travel(2.days)pu

ruby - 在 ruby​​ 中优雅地实现 'map (+1) list'

title中的短代码是在Haskell中,它做了类似的事情list.map{|x|x+1}ruby。虽然我知道那种方式,但我想知道的是,是否有更优雅的方式来像在Haskell中一样在ruby​​中实现同样的事情。我真的很喜欢ruby​​中的to_proc快捷方式,就像这样:[1,2,3,4].map(&:to_s)[1,2,3,4].inject(&:+)但这只接受Proc和方法之间完全匹配的参数数。我正在尝试寻找一种方法,允许将一个或多个参数额外传递到Proc,而不像第一个演示那样使用无用的临时block/变量。我想这样做:[1,2,3,4].map(&:+(1))ruby是否有类似

ruby-on-rails - 检查 Ruby 数组的元素是否包含在另一个数组中

这个问题在这里已经有了答案:Howtodetermineifonearraycontainsallelementsofanotherarray(8个答案)关闭9年前。我正在尝试比较两个Ruby数组以验证第一个数组的所有元素都包含在第二个数组中。(不需要反过来。)例如:a=["hello","goodbye"]b=["hello","goodbye","orange"]这应该返回true。但是,我想不出一种方法可以让我做到这一点。任何帮助将不胜感激!

ruby - 在 Ruby 中获取降序范围序列

所以这是上升的(1..5).to_a=>[1,2,3,4,5]但这不是(5..1).to_a=>[]我正在尝试从任意上限获取降序。谢谢。 最佳答案 试试这个:5.downto(1).to_a#=>[5,4,3,2,1]当然有相应的#upto。如果你想要步骤,你可以这样做:1.step(10,2).to_a#=>[1,3,5,7,9]10.step(1,-2).to_a#=>[10,8,6,4,2] 关于ruby-在Ruby中获取降序范围序列,我们在StackOverflow上找到一个类似

ruby - 如何在 Ruby 中查找字符串的所有循环?

我用Ruby写了一个方法来找到一个文本的所有循环组合x="ABCDE"(x.length).timesdoputsxx=x[1..x.length]+x[0].chrend有没有更好的方法来实现这个? 最佳答案 这是另一种方法。str="ABCDE"(0...str.length).collect{|i|(str*2)[i,str.length]}我使用了范围和#collect并假设您想要对字符串执行其他操作(而不仅仅是打印它们)。 关于ruby-如何在Ruby中查找字符串的所有循环?,

ruby-on-rails - 如何在我的模型中针对项目数组使用命名范围?

我知道我可以基于数组查询最近的书籍范围:recent_books,lambda{|since_dt|{:conditions=>{:created_at>=since_dt}}}但是当我有一组项目时,我该如何做一个类似的查询,例如如果我想知道是否有任何记录与[date1、date2、date3等]数组中的日期匹配我认为必须有一个collect/inject/select/mapy方法可以做到这一点,但我不确定是哪个方法。 最佳答案 如果您传递一个数组作为值,ActiveRecord足够智能,可以比较是否包含在数组中。例如,Book.